package com.greenline.push.dal.pushcenter;

import java.util.List;

import com.greenline.push.dal.pushcenter.dataobject.GroupUserDO;
import com.greenline.push.dal.query.GroupUserQuery;
/**
 * 
 * @Type GroupUserDao
 * @Desc GroupUserDao crud
 * @author shuai.zuo
 * @date 2014年10月9日
 * @Version V1.0
 */
public interface GroupUserDao {
    /**
     * 新增
     * 
     * @param group
     * @return 新增数据的ID
     */
    Long insert(GroupUserDO groupUserDO);

    /**
     * 根据ID获取
     * 
     * @param id
     * @return GroupAppDO
     */
    GroupUserDO getById(Long id);

    /**
     * 跟新
     * 
     * @param group
     * @return -1 表示更新失败；>0 表示更新成功
     */
    int update(GroupUserDO groupAppDO);

    /**
     * 分页查询
     * 
     * @param query
     * @return
     */
    GroupUserQuery listByQuery(GroupUserQuery query);

    /**
     * 删除
     * 
     * @param group
     * @return -1 表示删除失败；>0 表示删除成功
     */
    int deleteById(Long id);

    int delete(Long gid, Long uid);

    List<GroupUserDO> queryByGid(Long gid);
}
